[IAD-MIGRATION-116] Создать миграцию
Декларация бакетов объектного хранилища MinIO и структуры логов ненадежности
NoteКраткая карточка задачи
- Репозиторий / Компонент:
deploy-infrastructure/auth-service(Хранилище MinIO / Базаauth_db). - Целевая СУБД: MinIO S3 API / PostgreSQL v15+.
- Ссылка на Метод: Конфигурация метода
- Статус: Готово к реализации
- Инструкция по шагам: Создать изолированный бакет в объектном хранилище для бинарных аудиофайлов (.mp3/.ogg) и применить DDL-миграцию в
auth_dbдля фиксации логов хронических abuse-нарушений («пользователь ненадежен»).
-- Инициализация инфраструктуры S3 (Псевдокод конфигурации бакета MinIO)
-- BUCKET NAME: bpds-inventory-voice-streams
-- POLICY: Private (Доступ только по подписанным URL / Presigned URLs с TTL 15 минут)
-- Скрипт миграции для auth_db (Контур SECURITY)
CREATE TABLE IF NOT EXISTS auth_db.unreliable_user_logs (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
user_id VARCHAR(64) NOT NULL,
trace_id VARCHAR(128) NOT NULL, -- X-Request-ID исходного аудио-запроса
audio_s3_url TEXT NOT NULL, -- Ссылка на скомпрометированный файл
violation_count INTEGER NOT NULL, -- Счетчик нарушений на момент лога (>= 2)
detected_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);
CREATE INDEX IF NOT EXISTS idx_unreliable_users
ON auth_db.unreliable_user_logs (user_id, detected_at DESC);